Rice's theorem
#complexity_theory
Theorem
Define a partial function from to as a function not necessarily defined on all its inputs.
Furthermore say that a TM computes a partial function if for every where is defined, , and for every where is not defined, results into an infinite loop when executing on input .
If is the set of partial functions, define to be the Boolean function that on input outputs iff TM computes a partial function in .
Rice's theorem says that for every nontrivial (not empty nor set of all partial functions computable by some Turing machine), is not computable.
Notes
- may be used to prove theorem regarding HALT non-computability by any TM
- another wording of the theorem is, for a class of recursively enumerable sets, if the index set (the set of Gödel numbers of functions with domains belonging to ) is a recursive set, then is empty or contains all recursively enumerable sets
References
- S. Arora, B. Barak. Computational Complexity: A Modern Approach, Cambridge University Press, 2009, p. 35.
- http://kilby.stanford.edu/~rvg/154/handouts/Rice.html
- https://courses.grainger.illinois.edu/cs373/fa2013/Lectures/lec25.pdf
- https://mathworld.wolfram.com/RicesTheorem.html